const knex = require('./knex');

class Films {
  // 定义参数默认值为 user 表
  constructor(props = 'movies') {
    this.table = props
  }
  get_films(offset=0) { // 获取电影
    return knex(this.table).select().offset(offset).limit(6)
  }
  get_tags(){
    return knex(this.tags).select()
  }
  get_tags_films(tag_id, offset=0){ // 获取分类电影
    return knex(this.table).select().offset(offset).limit(6).whereIn('mid', (builder)=>{
      builder.select('mid').from('movies_tags').where('tid', '=', tag_id)
    })
  } 
  search(name){
    name = name.split('').join('%')
    return knex(this.table).select().limit(6).where('name','like', `%${name}%`)
  }
  queryCol(uid, offset){
    return knex(this.table).select().offset(offset).limit(6).whereIn('mid', (builder)=>{
      builder.from('user_collect').select('mid').where({'uid':uid});
    })
  }

  // 评分列表
  rankList(uid, offset){
    return knex('rank_list').select().offset(offset).limit(6).where({'uid':uid});
  }

  // 查询推荐
  queryList(list){
    return knex(this.table).select().whereIn("mid", list)
  }
}
module.exports = new Films();